package server.business.pojo;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.util.Date;

import org.springframework.format.annotation.DateTimeFormat;

import lombok.Data;

/**
 * 
 * @TableName transfusion_autologous
 * @author Galaxy
 */
@TableName(value = "transfusion_autologous")
@Data
public class TransfusionAutologous implements Serializable {
    /**
     * 编号
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField(value = "gmt_create", fill = FieldFill.INSERT) // 创建注解
    private Date gmtCreate;

    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField(value = "gmt_modified", fill = FieldFill.INSERT_UPDATE) // 更新注解
    private Date gmtModified;

    /**
     * 输血申请单号
     */
    @TableField(value = "transfusion_number")
    private String transfusionNumber;

    /**
     * 病案号
     */
    @TableField(value = "medical_record_number")
    private String medicalRecordNumber;

    /**
     * 受血者身份证号
     */
    @TableField(value = "patient_idcard")
    private String patientIdcard;

    /**
     * 临床诊断
     */
    @TableField(value = "diagnosis_result")
    private String diagnosisResult;

    /**
     * 拟备血量
     */
    @TableField(value = "prepare_volume")
    private Integer prepareVolume;

    /**
     * 输血类型
     */
    @TableField(value = "transfusion_type")
    private String transfusionType;

    /**
     * 输血量
     */
    @TableField(value = "transfusion_volume")
    private String transfusionVolume;

    /**
     * 拟手术日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField(value = "surgery_time")
    private Date surgeryTime;

    /**
     * 体重
     */
    @TableField(value = "weight")
    private String weight;

    /**
     * 血小板计数
     */
    @TableField(value = "platelet_count")
    private String plateletCount;

    /**
     * 血红蛋白
     */
    @TableField(value = "hemoglobin")
    private String hemoglobin;

    /**
     * 红细胞比容
     */
    @TableField(value = "hematocrit")
    private String hematocrit;

    /**
     * 申请医师
     */
    @TableField(value = "apply_doctor")
    private String applyDoctor;

    /**
     * 申请日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField(value = "apply_time")
    private Date applyTime;

    /**
     * 鉴定血型
     */
    @TableField(value = "identify_blood_type")
    private String identifyBloodType;

    /**
     * 鉴定Rho
     */
    @TableField(value = "identify_rho")
    private String identifyRho;

    /**
     * 鉴定者
     */
    @TableField(value = "appraiser")
    private String appraiser;

    /**
     * 回输时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField(value = "back_time")
    private Date backTime;

    /**
     * 回输量
     */
    @TableField(value = "back_volume")
    private Integer backVolume;

    /**
     * 取血人
     */
    @TableField(value = "blood_taker")
    private String bloodTaker;

    /**
     * 发血人
     */
    @TableField(value = "blood_sender")
    private String bloodSender;

    /**
     * 采血者
     */
    @TableField(value = "blood_collector")
    private String bloodCollector;

    /**
     * 心功能
     */
    @TableField(value = "heart_function")
    private String heartFunction;

    /**
     * 肺功能
     */
    @TableField(value = "lung_function")
    private String lungFunction;

    /**
     * 肝功能
     */
    @TableField(value = "liver_function")
    private String liverFunction;

    /**
     * 肾功能
     */
    @TableField(value = "renal_function")
    private String renalFunction;

    /**
     * 自体输血同意书
     */
    @TableField(value = "is_autobloodtran_agreement")
    private Integer isAutobloodtranAgreement;

    /**
     * 备注
     */
    @TableField(value = "note")
    private String note;

    /**
     * 逻辑删除
     */
    @TableField(value = "is_deleted")
    private Integer isDeleted;

    @TableField(exist = false)
    private static final long serialVersionUID = -521234473479279232L;
}